/**
 * FireFly (2011)
 */
package com.firefly.kernel.spi.event;

/**
 * 核心事件接口,所有核心事件需要实现该接口
 * 
 * @version 1.0 2011-1-1
 * @author lexloo(lexloo@gmail.com)
 * @since FireFly 1.0
 */
public interface IKernelEvent {
	/**
	 * 获取事件发出源
	 * 
	 * @return 事件发出源
	 */
	public Object getSource();

	/**
	 * 获取事件类型
	 * 
	 * @return 事件类型
	 */
	public String getType();

	/**
	 * 获取事件次序
	 * 
	 * @return 次序
	 */
	public long getSequence();

	/**
	 * 获取时间戳
	 * 
	 * @return 时间戳
	 */
	public long getTimestamp();

	/**
	 * 获取上下文
	 * 
	 * @return 上下文
	 */
	public Object getContext();
}
